package org.example.design.designmode.combination.coursedemo;

/**
 * 组合模式（透明模式）顶层抽象接口 特点是抽象类
 * 缺点：暴露所有的方法实现细节、子类集成可以选择不实现但如果实现方式不对就会有不友好的提示
 * @author songyafei
 */
public abstract class CourseComent {

    public String getName(CourseComent c){
        throw  new UnsupportedOperationException("不支持获取名称");
    }
    public double getPrice(CourseComent c){
        throw  new UnsupportedOperationException("不支持获取价格");
    }
    public void removeChild(CourseComent c){
        throw  new UnsupportedOperationException("不支持删除操作");
    }
    public void addChild(CourseComent c){
        throw  new UnsupportedOperationException("不支持添加操作");
    }
    public void print(){
        throw  new UnsupportedOperationException("不支持打印操作");
    }
}
